package containerlogistik.interfaces;

public interface Point extends PositionValue<Point>, Comparable <Point> {

    int x();

    int y();
    
    Point add(Point value);
    
    Point addOnX(int x);
    
    Point addOnY(int y);
    
    Point addOnX(double x);
    
    Point addOnY(double y);
    
    Point sub(Point value);
    
    Point subOnX(int x);
    
    Point subOnY(int y);
    
    Point subOnX(double x);
    
    Point subOnY(double y);
    
    Point mul(Point value);
    
    Point mulOnX(int x);
    
    Point mulOnY(int y);
    
    Point mulOnX(double x);
    
    Point mulOnY(double y);
    
}
